Add class toolbar before the style context is created for the widget.
authorMarco Brito <bcaza@null.net>
Sat, 30 Nov 2013 11:36:00 +0000 (11:36 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 1 Dec 2013 22:20:30 +0000 (17:20 -0500)
The call to gtk_button_set_relief() in gtk_toolbar_init() indirectly
used the style context of the half-created widget, before we had a
chance to add the "toolbar" style class to it.

Reorder gtk_toolbar_init() to ensure that the proper style class is
set first.

https://bugzilla.gnome.org/show_bug.cgi?id=719595

gtk/gtktoolbar.c

index d325a1a98ce3755499ad4279ea779eb23fa8178e..c6b8dd37a48bccab958678e541bc089e870a5cfa 100644 (file)
@@ -678,6 +678,9 @@ gtk_toolbar_init (GtkToolbar *toolbar)
   toolbar->priv = gtk_toolbar_get_instance_private (toolbar);
   priv = toolbar->priv;
 
+  context = gtk_widget_get_style_context (GTK_WIDGET (toolbar));
+  gtk_style_context_add_class (context, GTK_STYLE_CLASS_TOOLBAR);
+
   gtk_widget_set_can_focus (GTK_WIDGET (toolbar), FALSE);
   gtk_widget_set_has_window (GTK_WIDGET (toolbar), FALSE);
 
@@ -711,9 +714,6 @@ gtk_toolbar_init (GtkToolbar *toolbar)
   priv->max_homogeneous_pixels = -1;
   
   priv->timer = g_timer_new ();
-
-  context = gtk_widget_get_style_context (GTK_WIDGET (toolbar));
-  gtk_style_context_add_class (context, GTK_STYLE_CLASS_TOOLBAR);
 }
 
 static void